{% extends "layout/base.twig" %}

{% from "macros.twig" import class_item, class_name, class_type, member_signature, replace_backslash, sanitize, param_list, get_namespace %}

{% block title %}
{% set title = class %}
{{ parent() }}
{% endblock %}

{% block content %}
{% if class.shortdesc %}

{{ class.shortdesc|raw }}
{% endif %}
{% if class.longdesc %}

*Description*


{{ class.longdesc|raw }}
{% endif %}

{% if class.methods %}

*Methods*

The {{ class_type(class) }} defines the following methods:

{% for method in class.methods %}
{% if method.name != "__construct" %}
* <<{{ sanitize(replace_backslash(method)~"_"~method.name) }},`{{ method.name }}()`>>
{% endif %}
{% endfor %}

{% for method in class.methods %}
{% if method.name != "__construct" %}


[[{{ sanitize(replace_backslash(method)~"_"~method.name) }}]]
.`{{ method.name }}{{ block('method_parameters_signature') }}`
{% if method.tags('note') %}
{% for note in method.tags('note') %}
*NOTE:* {{ note|join(' ') }}
{% endfor %}
{% endif %}
****
[source,php]
----
/*
{% if method.shortdesc %}
{{ method.shortdesc|raw }}
{% endif %}
*/
----
****
{% endif %}

{% endfor %}
{% endif %}

{% endblock %}

{% block method_parameters_signature -%}
    {%- from "macros.twig" import method_parameters_signature -%}
    {{ method_parameters_signature(method) }}
{%- endblock %}